<!DOCTYPE html>
<!-- saved from url=(0127)https://docs.google.com/document/d/e/2PACX-1vQPyDlP-JBFKAbEHWnKwsHn1ystAtGIvI0u2roZ766CfzYv2wjgNPn43JPSEcWRe6773MMEqvo53Ahm/pub -->
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>WebPerfWG call - June 24th 2021</title><link rel="shortcut icon" href="https://ssl.gstatic.com/docs/documents/images/kix-favicon7.ico"><meta name="referrer" content="strict-origin-when-cross-origin"><style type="text/css" nonce="">
      @import url("https://fonts.googleapis.com/css?family=Google+Sans");
      @import url("https://fonts.googleapis.com/css?family=Roboto");

      body {
        font-family: Roboto, arial, sans, sans-serif;
        margin: 0;
      }

      iframe {
        border: 0;
        frameborder: 0;
        height: 100%;
        width: 100%;
      }

      #header {
        align-items: center;
        background: white;
        border-bottom: 1px #ccc solid;
        display: flex;
        height: 60px;
        justify-content: space-between;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 100;
      }

      #header #title {
        font-family: 'Google Sans';
        font-size: large;
        margin: auto 0 auto 20px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        width: 70%;
      }

      #header #interval {
        margin: auto 25px auto 0;
        font-family: Roboto;
        font-size: small;;
      }

      #footer {
        background: #f0f0f0;
        border-bottom: 1px #ccc solid;
        bottom: 0;
        font-family: Roboto;
        font-size: small;
        padding: 10px 10px;
        position: fixed;
        text-align: center;
        width: 100%;
      }

      #contents {
        padding: 100px 20% 50px 20%;
      }

      @media only screen and (max-device-width: 800px) {
        #header {
          border-bottom-width: 5px;
          height: auto;
          display: block;
        }

        #header #title {
          font-size: 3em;
          margin: auto 0 auto 20px;
          width: 90%;
        }

        #header #interval {
          font-size: 1.5em;
          margin: 10px 0 auto 25px;
        }

        #contents {
          padding: 150px 5% 80px;
        }

        #footer {
          font-size: 2em;
        }
      }

      .dash {
        padding: 0 6px;
      }
    </style></head><body><div id="header"><div id="title">WebPerfWG call - June 24th 2021</div><div id="interval"><span></span></div></div><div id="contents"><style type="text/css">.lst-kix_zh3gd8a3z3hx-0>li:before{content:"\0025cf  "}.lst-kix_zh3gd8a3z3hx-2>li:before{content:"\0025a0  "}ul.lst-kix_zh3gd8a3z3hx-8{list-style-type:none}.lst-kix_zh3gd8a3z3hx-1>li:before{content:"\0025cb  "}.lst-kix_zh3gd8a3z3hx-4>li:before{content:"\0025cb  "}ul.lst-kix_zh3gd8a3z3hx-4{list-style-type:none}ul.lst-kix_zh3gd8a3z3hx-5{list-style-type:none}ul.lst-kix_f7othpfzr43j-1{list-style-type:none}ul.lst-kix_zh3gd8a3z3hx-6{list-style-type:none}ul.lst-kix_f7othpfzr43j-0{list-style-type:none}ul.lst-kix_zh3gd8a3z3hx-7{list-style-type:none}ul.lst-kix_f7othpfzr43j-3{list-style-type:none}ul.lst-kix_zh3gd8a3z3hx-0{list-style-type:none}ul.lst-kix_f7othpfzr43j-2{list-style-type:none}ul.lst-kix_zh3gd8a3z3hx-1{list-style-type:none}ul.lst-kix_f7othpfzr43j-5{list-style-type:none}ul.lst-kix_zh3gd8a3z3hx-2{list-style-type:none}.lst-kix_zh3gd8a3z3hx-3>li:before{content:"\0025cf  "}ul.lst-kix_f7othpfzr43j-4{list-style-type:none}ul.lst-kix_zh3gd8a3z3hx-3{list-style-type:none}ul.lst-kix_f7othpfzr43j-7{list-style-type:none}ul.lst-kix_f7othpfzr43j-6{list-style-type:none}ul.lst-kix_f7othpfzr43j-8{list-style-type:none}.lst-kix_zh3gd8a3z3hx-8>li:before{content:"\0025a0  "}.lst-kix_zh3gd8a3z3hx-6>li:before{content:"\0025cf  "}.lst-kix_zh3gd8a3z3hx-5>li:before{content:"\0025a0  "}.lst-kix_pp6x8px5u3au-7>li:before{content:"\0025cb  "}.lst-kix_zh3gd8a3z3hx-7>li:before{content:"\0025cb  "}.lst-kix_pp6x8px5u3au-8>li:before{content:"\0025a0  "}.lst-kix_3e81ywdt94zi-6>li:before{content:"\0025cf  "}.lst-kix_3e81ywdt94zi-4>li:before{content:"\0025cb  "}.lst-kix_3e81ywdt94zi-8>li:before{content:"\0025a0  "}.lst-kix_3e81ywdt94zi-3>li:before{content:"\0025cf  "}.lst-kix_3e81ywdt94zi-7>li:before{content:"\0025cb  "}.lst-kix_pp6x8px5u3au-6>li:before{content:"\0025cf  "}ul.lst-kix_pp6x8px5u3au-4{list-style-type:none}ul.lst-kix_pp6x8px5u3au-5{list-style-type:none}ul.lst-kix_pp6x8px5u3au-6{list-style-type:none}.lst-kix_pp6x8px5u3au-5>li:before{content:"\0025a0  "}ul.lst-kix_pp6x8px5u3au-7{list-style-type:none}ul.lst-kix_pp6x8px5u3au-0{list-style-type:none}ul.lst-kix_pp6x8px5u3au-1{list-style-type:none}.lst-kix_3e81ywdt94zi-5>li:before{content:"\0025a0  "}ul.lst-kix_pp6x8px5u3au-2{list-style-type:none}ul.lst-kix_pp6x8px5u3au-3{list-style-type:none}.lst-kix_pp6x8px5u3au-4>li:before{content:"\0025cb  "}.lst-kix_pp6x8px5u3au-1>li:before{content:"\0025cb  "}.lst-kix_pp6x8px5u3au-3>li:before{content:"\0025cf  "}.lst-kix_3e81ywdt94zi-0>li:before{content:"\0025cf  "}ul.lst-kix_pp6x8px5u3au-8{list-style-type:none}.lst-kix_pp6x8px5u3au-2>li:before{content:"\0025a0  "}.lst-kix_3e81ywdt94zi-2>li:before{content:"\0025a0  "}.lst-kix_tof9cmw9evtz-0>li:before{content:"\0025cf  "}.lst-kix_tof9cmw9evtz-1>li:before{content:"\0025cb  "}.lst-kix_tof9cmw9evtz-2>li:before{content:"\0025a0  "}.lst-kix_3e81ywdt94zi-1>li:before{content:"\0025cb  "}.lst-kix_pp6x8px5u3au-0>li:before{content:"\0025cf  "}.lst-kix_tof9cmw9evtz-4>li:before{content:"\0025cb  "}.lst-kix_tof9cmw9evtz-5>li:before{content:"\0025a0  "}.lst-kix_7pd2elhp3awg-7>li:before{content:"\0025cb  "}.lst-kix_tof9cmw9evtz-3>li:before{content:"\0025cf  "}.lst-kix_tof9cmw9evtz-7>li:before{content:"\0025cb  "}.lst-kix_7pd2elhp3awg-8>li:before{content:"\0025a0  "}.lst-kix_7pd2elhp3awg-5>li:before{content:"\0025a0  "}.lst-kix_tof9cmw9evtz-6>li:before{content:"\0025cf  "}.lst-kix_7pd2elhp3awg-6>li:before{content:"\0025cf  "}ul.lst-kix_7pd2elhp3awg-8{list-style-type:none}ul.lst-kix_7pd2elhp3awg-7{list-style-type:none}ul.lst-kix_7pd2elhp3awg-6{list-style-type:none}ul.lst-kix_7pd2elhp3awg-5{list-style-type:none}ul.lst-kix_tof9cmw9evtz-8{list-style-type:none}ul.lst-kix_7pd2elhp3awg-0{list-style-type:none}ul.lst-kix_tof9cmw9evtz-3{list-style-type:none}ul.lst-kix_tof9cmw9evtz-2{list-style-type:none}.lst-kix_tof9cmw9evtz-8>li:before{content:"\0025a0  "}ul.lst-kix_tof9cmw9evtz-1{list-style-type:none}ul.lst-kix_tof9cmw9evtz-0{list-style-type:none}ul.lst-kix_7pd2elhp3awg-4{list-style-type:none}ul.lst-kix_tof9cmw9evtz-7{list-style-type:none}ul.lst-kix_7pd2elhp3awg-3{list-style-type:none}ul.lst-kix_tof9cmw9evtz-6{list-style-type:none}ul.lst-kix_7pd2elhp3awg-2{list-style-type:none}ul.lst-kix_tof9cmw9evtz-5{list-style-type:none}ul.lst-kix_7pd2elhp3awg-1{list-style-type:none}ul.lst-kix_tof9cmw9evtz-4{list-style-type:none}ul.lst-kix_qy33h9ddkt6i-2{list-style-type:none}ul.lst-kix_qy33h9ddkt6i-3{list-style-type:none}ul.lst-kix_qy33h9ddkt6i-0{list-style-type:none}ul.lst-kix_qy33h9ddkt6i-1{list-style-type:none}ul.lst-kix_sadtqmj8zh7-2{list-style-type:none}ul.lst-kix_qy33h9ddkt6i-6{list-style-type:none}ul.lst-kix_sadtqmj8zh7-3{list-style-type:none}ul.lst-kix_qy33h9ddkt6i-7{list-style-type:none}ul.lst-kix_sadtqmj8zh7-0{list-style-type:none}ul.lst-kix_qy33h9ddkt6i-4{list-style-type:none}ul.lst-kix_sadtqmj8zh7-1{list-style-type:none}ul.lst-kix_qy33h9ddkt6i-5{list-style-type:none}ul.lst-kix_sadtqmj8zh7-6{list-style-type:none}ul.lst-kix_sadtqmj8zh7-7{list-style-type:none}ul.lst-kix_sadtqmj8zh7-4{list-style-type:none}ul.lst-kix_qy33h9ddkt6i-8{list-style-type:none}.lst-kix_sadtqmj8zh7-5>li:before{content:"\0025a0  "}ul.lst-kix_sadtqmj8zh7-5{list-style-type:none}.lst-kix_abdk15z7vcn6-8>li:before{content:"\0025a0  "}ul.lst-kix_sadtqmj8zh7-8{list-style-type:none}.lst-kix_sadtqmj8zh7-4>li:before{content:"\0025cb  "}.lst-kix_7pd2elhp3awg-1>li:before{content:"\0025cb  "}.lst-kix_abdk15z7vcn6-6>li:before{content:"\0025cf  "}.lst-kix_7pd2elhp3awg-0>li:before{content:"\0025cf  "}.lst-kix_abdk15z7vcn6-7>li:before{content:"\0025cb  "}.lst-kix_sadtqmj8zh7-3>li:before{content:"\0025cf  "}.lst-kix_7pd2elhp3awg-4>li:before{content:"\0025cb  "}.lst-kix_sadtqmj8zh7-0>li:before{content:"\0025cf  "}.lst-kix_sadtqmj8zh7-2>li:before{content:"\0025a0  "}.lst-kix_7pd2elhp3awg-3>li:before{content:"\0025cf  "}.lst-kix_sadtqmj8zh7-1>li:before{content:"\0025cb  "}.lst-kix_7pd2elhp3awg-2>li:before{content:"\0025a0  "}.lst-kix_f7othpfzr43j-8>li:before{content:"\0025a0  "}.lst-kix_abdk15z7vcn6-0>li:before{content:"\0025cf  "}.lst-kix_abdk15z7vcn6-2>li:before{content:"\0025a0  "}.lst-kix_abdk15z7vcn6-3>li:before{content:"\0025cf  "}.lst-kix_abdk15z7vcn6-4>li:before{content:"\0025cb  "}.lst-kix_abdk15z7vcn6-5>li:before{content:"\0025a0  "}.lst-kix_abdk15z7vcn6-1>li:before{content:"\0025cb  "}ul.lst-kix_3e81ywdt94zi-8{list-style-type:none}ul.lst-kix_3e81ywdt94zi-7{list-style-type:none}ul.lst-kix_3e81ywdt94zi-6{list-style-type:none}ul.lst-kix_3e81ywdt94zi-1{list-style-type:none}ul.lst-kix_3e81ywdt94zi-0{list-style-type:none}ul.lst-kix_abdk15z7vcn6-8{list-style-type:none}.lst-kix_qy33h9ddkt6i-6>li:before{content:"\0025cf  "}.lst-kix_qy33h9ddkt6i-8>li:before{content:"\0025a0  "}ul.lst-kix_abdk15z7vcn6-7{list-style-type:none}ul.lst-kix_3e81ywdt94zi-5{list-style-type:none}ul.lst-kix_abdk15z7vcn6-6{list-style-type:none}ul.lst-kix_3e81ywdt94zi-4{list-style-type:none}ul.lst-kix_abdk15z7vcn6-5{list-style-type:none}ul.lst-kix_3e81ywdt94zi-3{list-style-type:none}ul.lst-kix_abdk15z7vcn6-4{list-style-type:none}ul.lst-kix_3e81ywdt94zi-2{list-style-type:none}.lst-kix_qy33h9ddkt6i-7>li:before{content:"\0025cb  "}ul.lst-kix_abdk15z7vcn6-3{list-style-type:none}ul.lst-kix_xwltruot4bcm-1{list-style-type:none}ul.lst-kix_xwltruot4bcm-0{list-style-type:none}ul.lst-kix_xwltruot4bcm-3{list-style-type:none}.lst-kix_f7othpfzr43j-5>li:before{content:"\0025a0  "}ul.lst-kix_xwltruot4bcm-2{list-style-type:none}ul.lst-kix_xwltruot4bcm-5{list-style-type:none}ul.lst-kix_xwltruot4bcm-4{list-style-type:none}ul.lst-kix_xwltruot4bcm-7{list-style-type:none}ul.lst-kix_xwltruot4bcm-6{list-style-type:none}.lst-kix_f7othpfzr43j-6>li:before{content:"\0025cf  "}.lst-kix_f7othpfzr43j-7>li:before{content:"\0025cb  "}ul.lst-kix_xwltruot4bcm-8{list-style-type:none}.lst-kix_xwltruot4bcm-8>li:before{content:"\0025a0  "}.lst-kix_xwltruot4bcm-7>li:before{content:"\0025cb  "}.lst-kix_xwltruot4bcm-5>li:before{content:"\0025a0  "}.lst-kix_xwltruot4bcm-4>li:before{content:"\0025cb  "}.lst-kix_xwltruot4bcm-6>li:before{content:"\0025cf  "}.lst-kix_f7othpfzr43j-4>li:before{content:"\0025cb  "}.lst-kix_qy33h9ddkt6i-0>li:before{content:"\0025cf  "}.lst-kix_f7othpfzr43j-3>li:before{content:"\0025cf  "}li.li-bullet-0:before{margin-left:-18pt;white-space:nowrap;display:inline-block;min-width:18pt}.lst-kix_xwltruot4bcm-1>li:before{content:"\0025cb  "}.lst-kix_f7othpfzr43j-1>li:before{content:"\0025cb  "}ul.lst-kix_abdk15z7vcn6-2{list-style-type:none}ul.lst-kix_abdk15z7vcn6-1{list-style-type:none}.lst-kix_xwltruot4bcm-0>li:before{content:"\0025cf  "}.lst-kix_xwltruot4bcm-2>li:before{content:"\0025a0  "}.lst-kix_f7othpfzr43j-0>li:before{content:"\0025cf  "}.lst-kix_f7othpfzr43j-2>li:before{content:"\0025a0  "}ul.lst-kix_abdk15z7vcn6-0{list-style-type:none}.lst-kix_sadtqmj8zh7-6>li:before{content:"\0025cf  "}.lst-kix_qy33h9ddkt6i-2>li:before{content:"\0025a0  "}.lst-kix_qy33h9ddkt6i-4>li:before{content:"\0025cb  "}.lst-kix_xwltruot4bcm-3>li:before{content:"\0025cf  "}.lst-kix_sadtqmj8zh7-7>li:before{content:"\0025cb  "}.lst-kix_qy33h9ddkt6i-1>li:before{content:"\0025cb  "}.lst-kix_qy33h9ddkt6i-5>li:before{content:"\0025a0  "}.lst-kix_sadtqmj8zh7-8>li:before{content:"\0025a0  "}.lst-kix_qy33h9ddkt6i-3>li:before{content:"\0025cf  "}ol{margin:0;padding:0}table td,table th{padding:0}.c0{margin-left:36pt;padding-top:0pt;padding-left:0pt;padding-bottom:0pt;line-height:1.15;orphans:2;widows:2;text-align:left}.c7{color:#434343;font-weight:400;text-decoration:none;vertical-align:baseline;font-size:14pt;font-family:"Arial";font-style:normal}.c3{padding-top:16pt;padding-bottom:4pt;line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}.c5{color:#000000;font-weight:400;text-decoration:none;vertical-align:baseline;font-size:16pt;font-family:"Arial";font-style:normal}.c6{padding-top:18pt;padding-bottom:6pt;line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}.c1{color:#000000;font-weight:400;text-decoration:none;vertical-align:baseline;font-size:11pt;font-family:"Arial";font-style:normal}.c4{padding-top:0pt;padding-bottom:0pt;line-height:1.15;orphans:2;widows:2;text-align:left}.c2{text-decoration-skip-ink:none;-webkit-text-decoration-skip:none;color:#1155cc;text-decoration:underline}.c11{background-color:#ffffff;max-width:468pt;padding:72pt 72pt 72pt 72pt}.c9{color:inherit;text-decoration:inherit}.c8{padding:0;margin:0}.c10{height:11pt}.title{padding-top:0pt;color:#000000;font-size:26pt;padding-bottom:3pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}.subtitle{padding-top:0pt;color:#666666;font-size:15pt;padding-bottom:16pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}li{color:#000000;font-size:11pt;font-family:"Arial"}p{margin:0;color:#000000;font-size:11pt;font-family:"Arial"}h1{padding-top:20pt;color:#000000;font-size:20pt;padding-bottom:6pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}h2{padding-top:18pt;color:#000000;font-size:16pt;padding-bottom:6pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}h3{padding-top:16pt;color:#434343;font-size:14pt;padding-bottom:4pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}h4{padding-top:14pt;color:#666666;font-size:12pt;padding-bottom:4pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}h5{padding-top:12pt;color:#666666;font-size:11pt;padding-bottom:4pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}h6{padding-top:12pt;color:#666666;font-size:11pt;padding-bottom:4pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;font-style:italic;orphans:2;widows:2;text-align:left}</style><div class="c11"><h2 class="c6" id="h.nkpunjwgsq2f"><span class="c5">Participants</span></h2><p class="c4"><span class="c1">Yoav Weiss, Nic Jansma, Alex Christensen, Benjamin de Kosnik, Carine Bournez, Giacomo Zecchini, Michelle Vu, Noam Helfman, Sean Feng</span></p><p class="c4 c10"><span class="c1"></span></p><h2 class="c6" id="h.2vnpslm210sb"><span class="c5">Next Meeting</span></h2><p class="c4"><span class="c1">July 8 2021 @ 10am PST / 1pm EST</span></p><h2 class="c6" id="h.6n7p7bvqke2x"><span class="c5">TPAC 2021</span></h2><ul class="c8 lst-kix_tof9cmw9evtz-0 start"><li class="c0 li-bullet-0"><span class="c1">Virtual!</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Nic</b>: TPAC will be virtual again this year.</span></li><li class="c0 li-bullet-0"><span class="c1">… October 18th through 29th</span></li><li class="c0 li-bullet-0"><span class="c1">.. Breakout 18th till 22nd</span></li><li class="c0 li-bullet-0"><span class="c1">… the rest is group meetings</span></li><li class="c0 li-bullet-0"><span class="c1">… Like last year, we can build an agenda ahead of time</span></li><li class="c0 li-bullet-0"><span class="c1"><b>NoamH</b>: What TZ?</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: we had set late afternoon Europe, early morning Pacific</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Nic</b>: We did 12pm-3pm EST, 4 days in a row</span></li><li class="c0 li-bullet-0"><span><b>Yoav</b>: Carine, are there mandatory times, or can we schedule on our own?</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Carine</b>: The second week is meant for joint group meetings. &nbsp;Some groups prefer to schedule their own meetings outside of TPAC, and reserve the second week for joint meetings, to reduce conflicts</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Do we have any strong preference for week and timezones?</span></li><li class="c0 li-bullet-0"><span class="c1"><b>NoamH</b>: For me it’s becoming late, but I can always participate in the earlier sessions</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: We can always schedule sessions your participate in earlier</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Benjamin</b>: West coast could start earlier, 8am PST? &nbsp;Palatable for me, may help Europe</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Nic</b>: last year we did 3-hrs days, on 4 days, we could do that again.</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Benjamin</b>: I’ve seen other groups split it out a bit more over multiple days. &nbsp;If we have two weeks we could do M,W,F over two weeks even</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Are you suggesting 2x 3hr sessions in one week, and 2x 3hr sessions in the next?</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Benjamin</b>: 2hr meetings on M,W,F and work sessions on Tu,Thr</span></li><li class="c0 li-bullet-0"><span><b>Yoav</b>: We can create a poll with multiple options for layouts, and take it from there</span></li></ul><h2 class="c6" id="h.3b3idaeuca8x"><span class="c5">Preload &amp; Resource Hints =&gt; CR snapshot (??)</span></h2><ul class="c8 lst-kix_pp6x8px5u3au-0 start"><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Moved these to WHATWG, captured in our charter</span></li><li class="c0 li-bullet-0"><span class="c1">… One suggestion from a member was to try to get them to CR snapshot before moving them over, mostly for IPR purposes</span></li><li class="c0 li-bullet-0"><span class="c1">… Looking into what that would entail and talking to Carine and other folks, it seems that would require a bunch of work to do that</span></li><li class="c0 li-bullet-0"><span class="c1">… Personally, this is not work that I can take on, and I’m not aware of anyone else that can take on that work</span></li><li class="c0 li-bullet-0"><span class="c1">… Question to the group: is someone interested in taking on work to take Preload/Resource Hints to CR as part of working group, and only then move them to WHATWG? &nbsp;Otherwise we can skip that phase and attempt to move them directly.</span></li><li class="c0 li-bullet-0"><span class="c1">… Asking for volunteers</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Alex</b>: I have no idea what it entails but I need to make sure that succeeds. &nbsp;I can volunteer and ask for guidance along the way.</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Carine, maybe we can start an email thread with Alex, outlining the details? &nbsp;TAG review and wide review and create all of the documents that it entails.</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: AI for Carine to start an email thread for Alex and myself and we can start this</span></li></ul><h2 class="c6" id="h.awlxx0zac2iv"><span class="c5">Issues</span></h2><h3 class="c3" id="h.xl2i403t06ye"><span class="c2"><a class="c9" href="https://www.google.com/url?q=https://github.com/w3c/requestidlecallback/pull/92&amp;sa=D&amp;source=editors&amp;ust=1626098802683000&amp;usg=AOvVaw16UqBK-sWZQoCtxBlmArLm">rIC #92: Editorial: rename spec to requestIdleCallback()</a></span><span class="c7">&nbsp;</span></h3><ul class="c8 lst-kix_qy33h9ddkt6i-0 start"><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Suggestion from Marcos is to just call the spec requestIdleCallback, currently called “Cooperative Scheduling of Background Tasks”.</span></li><li class="c0 li-bullet-0"><span class="c1">… I’d suggest we rename to make it easier</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Noam</b>: Sounds like a good idea</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Carine</b>: Can we get a status update on this doc, it’s in a PR for quite some time. &nbsp;Should it go back to CR again?</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: It’s in PR, there are 4 open issues IIRC that need some work. &nbsp;We were having some discussions a year ago, but that died out</span></li><li class="c0 li-bullet-0"><span class="c1">… Bringing it back to CR and figuring out a way to re-work on those issues makes sense, and once those are resolved bring it back to PR and maybe REC</span></li><li class="c0 li-bullet-0"><span class="c1">… Unlike other specs this one seems like it could be done once we resolve the issues</span></li><li class="c0 li-bullet-0"><span class="c1">… Makes sense to bring it to REC other than living standards CR</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Carine</b>: Agreed</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Any objections?</span></li><li class="c0 li-bullet-0"><span class="c1">(none)</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Carine</b>: Do we have the editors around?</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Ross is not an active editor, I’m in the process of trying to find an active editor on the Chrome side but it may take a while. &nbsp;I can put myself as an Editor if needed, but I don’t have the bandwidth to deal with the issues in the near term.</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Carine</b>: We may need to go to TAG and wide review so I want Editors to be aware of that</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Was it that our previous review was long ago and needs to be redone?</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Carine</b>: Exactly, I think we may hit that with all of our specs</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Right now we don’t have an active editor, but I hope to find one within a few months</span></li><li class="c0 li-bullet-0"><span class="c1">… Willing to put my name as a temporary Editor, and move Ross and Ilya into former editors in the interim until a new Editor is found</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Carine</b>: Moving from PR to CR we need a wide review</span></li><li class="c0 li-bullet-0"><span class="c1">… There have been substantial changes from last time, the comment which prevented it from going from PR to REC. &nbsp;It wasn’t formal, but it should have gone back to CR.</span></li><li class="c0 li-bullet-0"><span class="c1">… Apart from Page Visibility, the other ones will require a review</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Can we leave the spec as-is at PR until we find someone with bandwidth to tackle that kind of a wide review</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Carine</b>: Yes</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: We’ll revisit once we have an active editor, move to CR and fix issues, then go to wide review</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Carine</b>: The original issue that prevented REC was fixed, around idle time, but there were substantive changes for review</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Issue 71 was stuck on review, 82, 86, 87 are ones that we need to deal with</span></li><li class="c0 li-bullet-0"><span class="c1">… There are substantial issues to still discuss</span></li><li class="c0 li-bullet-0"><span class="c1">… In order to move spec towards REC</span></li><li class="c0 li-bullet-0"><span class="c1">… All of these changes are meaningful. &nbsp;Not sure which of them happened since Wide Review.</span></li><li class="c0 li-bullet-0"><span class="c1">… Going back to CR and then towards REC sounds like the right path, but for all of that we’ll need an active editor</span></li></ul><h3 class="c3" id="h.p6vd7pfzihid"><span class="c7">JS profiling and COI restrictions - Noam Helfman</span></h3><ul class="c8 lst-kix_abdk15z7vcn6-0 start"><li class="c0 li-bullet-0"><span class="c1"><b>Noam</b>: We’ve done some work recently, works from Microsoft/Google/Chromium/Facebook</span></li><li class="c0 li-bullet-0"><span class="c1">… We came to conclusion that it’s OK to remove the restriction for cross-origin isolation</span></li><li class="c0 li-bullet-0"><span class="c1">… It was done in collaboration with WebAppSec WG</span></li><li class="c0 li-bullet-0"><span class="c1">… Was a security review and everyone was OK with it</span></li><li class="c0 li-bullet-0"><span class="c1">… Now we’re removing that from the spec and help followup implementations from the vendors that support it</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Great in terms of adoption for this</span></li><li class="c0 li-bullet-0"><span class="c1">… Will make API significantly more applicable in a safe way</span></li><li class="c0 li-bullet-0"><span class="c1">… In terms of implementation, I don’t think Chromium has actually lifted the restriction</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Noam</b>: Andrew has issued a PR for that, it’s close</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: One place where this could have implications on other work is we talked about potentially reusing some of the infrastructure there for LongTask attribution, but it didn’t seem very feasible with the COI restriction in place, as it would mean LongTask attribution would only work in COI</span></li><li class="c0 li-bullet-0"><span class="c1">… But maybe now that could change things on that front</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Noam</b>: One is LongTask attribution. &nbsp;With LT API we already have timestamps we could link to profiling. &nbsp;Same goes for EventTiming spec, which would benefit from attribution aspects, but it’s not necessary as you could link to the right stacks at the time.</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: Users that are listening to LT APIs and want attribution, could turn on Profiling and correlating timestamps to get attribution for free.</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Noam</b>: If part of the spec and you’re tracking LongTasks or EventTiming or ElementTiming, but then it’d be even easier to adopt and as a tool to troubleshoot real problems for the users</span></li><li class="c0 li-bullet-0"><span><b>Yoav</b>: Linked to the </span><span class="c2"><a class="c9" href="https://www.google.com/url?q=https://chromium-review.googlesource.com/c/chromium/src/%2B/2967756&amp;sa=D&amp;source=editors&amp;ust=1626098802687000&amp;usg=AOvVaw3HBfqKNs3ng0QjuAFNDz54">Chromium CL</a></span></li><li class="c0 li-bullet-0"><span class="c1">*support from Akamai and Salesforce*</span></li></ul><p class="c4 c10"><span class="c1"></span></p><p class="c4"><span class="c1">Can non-W3C members join TPAC?</span></p><ul class="c8 lst-kix_xwltruot4bcm-0 start"><li class="c0 li-bullet-0"><span class="c1">Yes, get in touch with WG chairs</span></li></ul><p class="c4 c10"><span class="c1"></span></p><h3 class="c3" id="h.nehvi564iszf"><span class="c2"><a class="c9" href="https://www.google.com/url?q=https://github.com/whatwg/fetch/pull/1232&amp;sa=D&amp;source=editors&amp;ust=1626098802688000&amp;usg=AOvVaw1XIH71898p50yjDu4bo_xD">Fetch #1232 (RT): Add a "revalidated" cache state</a></span><span>&nbsp;&amp; </span><span class="c2"><a class="c9" href="https://www.google.com/url?q=https://github.com/w3c/resource-timing/pull/272&amp;sa=D&amp;source=editors&amp;ust=1626098802689000&amp;usg=AOvVaw1e9VfgqrRQENvGsUEkEkKI">RT #272: Add a revalidation cache state and adapt transferSize to it</a></span><span class="c7">&nbsp;</span></h3><ul class="c8 lst-kix_sadtqmj8zh7-0 start"><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: A while ago we decide that transferSize can be limited to encodedBodySize + fixed size for headers in order to support current use cases and not leak what size of headers is actually</span></li><li class="c0 li-bullet-0"><span class="c1">… While implementing it, I realized what we specified wasn’t sufficient for implementing both use-cases</span></li><li class="c0 li-bullet-0"><span class="c1">… For revalidated cached responses, we want to just provide the fixed header size without the encodedBodySize to enable folks to distinguish between responses coming from the cache, the network as well as network-revalidation.</span></li><li class="c0 li-bullet-0"><span class="c1">… That bit of state was missing, I PR’d a change to add that state to Fetch</span></li><li class="c0 li-bullet-0"><span class="c1">… That’s what I wanted to discuss but we’ve done that a while ago, just wanted to let people be aware of this</span></li><li class="c0 li-bullet-0"><span class="c1">… Was interested if other implementations (mainly Mozilla, as they have implemented transferSize) have an issue on record to follow that behavior change?</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Benjamin</b>: There’s an issue filed, and we’ll be working on Fetch integration in H2 so this is relevant</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Alex</b>: Can you file an issue for Webkit also? I’ve implemented it as off-by-default to see what tests pass if it were to be implemented.</span></li><li class="c0 li-bullet-0"><span><b>Yoav</b>: AI to file an </span><span class="c2"><a class="c9" href="https://www.google.com/url?q=https://bugs.webkit.org/show_bug.cgi?id%3D227393&amp;sa=D&amp;source=editors&amp;ust=1626098802689000&amp;usg=AOvVaw2cx0vA_meIx00BcXyjmb8A">issue</a></span></li></ul><h3 class="c3" id="h.cdsbzxwe18cw"><span class="c2"><a class="c9" href="https://www.google.com/url?q=https://github.com/w3c/navigation-timing/issues/146&amp;sa=D&amp;source=editors&amp;ust=1626098802690000&amp;usg=AOvVaw0xEJkzsOKRn-Owi3FShW1O">NT #146: A scenario where transferSize is 0 for non cached loads (or may be not)</a></span></h3><ul class="c8 lst-kix_7pd2elhp3awg-0 start"><li class="c0 li-bullet-0"><span class="c1"><b>Yoav</b>: It seems like a scenario where this is a Chromium bug report more than anything.</span></li><li class="c0 li-bullet-0"><span class="c1">… When the resource is in the process of navigating and gets interrupted, the transferSize is 0 but should not be the case</span></li><li class="c0 li-bullet-0"><span class="c1">… Assuming the resource was fully downloaded over the network, transferSize is actual body size plus constant</span></li><li class="c0 li-bullet-0"><span class="c1">... Move the issue to an implementation bug</span></li><li class="c0 li-bullet-0"><span class="c1"><b>Nic</b>: I don’t think there’s anything here the spec is unclear about</span></li><li class="c0 li-bullet-0"><span><b>Yoav</b>: Move to Chromium bug</span></li></ul></div></div><div id="footer"><span> <a target="_blank" title="Learn more about " href="https://docs.google.com/"></a></span><span class="dash">–</span><a href="https://docs.google.com/u/0/abuse?id=AKkXjozgjo37zYPb6-LrfZPZH2ZQbGsDWlesQ9CnkKp6eolewE5oE93-J28bCqNM8PnnkIA2xbzcBqtca2Q9cQg:0"></a></div><script type="text/javascript" nonce="">(function(){/*

 Copyright The Closure Library Authors.
 SPDX-License-Identifier: Apache-2.0
*/
var aa="function"==typeof Object.create?Object.create:function(a){function b(){}b.prototype=a;return new b},ba="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a[b]=c.value;return a};
function ca(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var b=0;b<a.length;++b){var c=a[b];if(c&&c.Math==Math)return c}throw Error("Cannot find global object");}var da=ca(this);function ea(a,b){if(b)a:{var c=da;a=a.split(".");for(var d=0;d<a.length-1;d++){var e=a[d];if(!(e in c))break a;c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&ba(c,a,{configurable:!0,writable:!0,value:b})}}var h;
if("function"==typeof Object.setPrototypeOf)h=Object.setPrototypeOf;else{var l;a:{var fa={a:!0},ha={};try{ha.__proto__=fa;l=ha.a;break a}catch(a){}l=!1}h=l?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+" is not extensible");return a}:null}var ia=h;
function m(a,b){a.prototype=aa(b.prototype);a.prototype.constructor=a;if(ia)ia(a,b);else for(var c in b)if("prototype"!=c)if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&&Object.defineProperty(a,c,d)}else a[c]=b[c];a.m=b.prototype}ea("Object.is",function(a){return a?a:function(b,c){return b===c?0!==b||1/b===1/c:b!==b&&c!==c}});var q=this||self;function r(){}function t(a){var b=typeof a;return"object"==b&&null!=a||"function"==b}
function ja(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var d=c.slice();d.push.apply(d,arguments);return a.apply(this,d)}}function ka(a,b){function c(){}c.prototype=b.prototype;a.m=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.A=function(d,e,f){for(var g=Array(arguments.length-2),k=2;k<arguments.length;k++)g[k-2]=arguments[k];return b.prototype[e].apply(d,g)}}function u(a){return a};function w(a){w[" "](a);return a}w[" "]=r;function la(a,b,c){return Object.prototype.hasOwnProperty.call(a,b)?a[b]:a[b]=c(b)};function ma(a){return la(a.prototype,"$$generatedClassName",function(){return"Class$obf_"+{valueOf:function(){return++na}}})}var na=1E3;function x(){}x.prototype.s=function(){return this.j||(Object.defineProperties(this,{j:{value:oa=oa+1|0,enumerable:!1}}),this.j)};x.prototype.toString=function(){var a=y(z(pa(this.constructor)))+"@";var b=(this.s()>>>0).toString(16);return a+y(b)};function A(){}m(A,x);A.prototype.i=function(a){this.h=a;if(a instanceof Object)try{a.v=this}catch(b){}};function qa(a){a.h instanceof Error&&(Error.captureStackTrace?Error.captureStackTrace(a.h):a.h.stack=Error().stack)}A.prototype.toString=function(){var a=z(pa(this.constructor)),b=this.l;return null==b?a:y(a)+": "+y(b)};function B(){}m(B,A);function D(){}m(D,B);function E(){}m(E,D);E.prototype.i=function(a){D.prototype.i.call(this,Object.is(this.g,"__noinit__")?a:this.g)};function ra(){}m(ra,E);var oa=0;function sa(a,b){return"string"==typeof a?a.charCodeAt(b):a.g(b)};function y(a){return null==a?"null":a.toString()}function ta(a){return 65536<=a?y(String.fromCharCode((55296+((a-65536|0)>>10&1023)|0)&65535))+y(String.fromCharCode((56320+((a-65536|0)&1023)|0)&65535)):String.fromCharCode(a&65535)}function ua(a,b){var c=b,d=a.length,e;b=sa(a,(e=c,c=c+1|0,e));var f;if(e=55296<=b&&56319>=b&&c<d)a=f=sa(a,c),e=56320<=a&&57343>=a;var g;e?g=65536+((b&1023)<<10)+(f&1023)|0:g=b;return g};function F(a,b){this.g=a;this.h=b}m(F,x);function z(a){if(0!=a.h){var b="L"+y(ma(a.g))+";";a=a.h;for(var c="",d=0;d<a;d=d+1|0)c=y(c)+"[";return y(c)+y(b)}return ma(a.g)}F.prototype.toString=function(){return"class "+y(z(this))};function pa(a){return la(a.prototype,"$$class/0",function(){return new F(a,0)})};function G(a,b){return null==a?a:b?decodeURI(a):decodeURIComponent(a)};var va=/^(?:([^:/?#.]+):)?(?:\/\/(?:([^/?#]*)@)?([^/#?]*?)(?::([0-9]+))?(?=[/#?]|$))?([^?#]+)?(?:\?([^#]*))?(?:#([\S\s]*))?$/;function wa(a){a=va.exec(a);for(var b=[],c=0;7>=c;c=c+1|0)a.length<=c||null==a[c]?b.push(null):b.push(a[c]);return b}
function xa(a,b){var c=a.indexOf(ta(35));c=0>c?a.length:c;a:{var d=0;for(var e=b.length;0<(d=a.indexOf(b,d))&&d<c;){var f=ua(a,d-1|0);if(38==f||63==f){if((d+e|0)>=a.length)break a;f=ua(a,d+e|0);if(61==f||38==f||35==f)break a}d=d+(e+1)|0}d=-1}if(0>d)return null;e=a.indexOf(ta(38),d);if(0>e||e>c)e=c;d=d+(b.length+1)|0;b=Math.min(a.length,d);a=a.substr(b,Math.min(a.length,Math.max(d,e))-b|0);c=" ";for(b=0;0<=(b=c.indexOf("\\",b));)36==c.charCodeAt(b+1|0)?(d=y(c.substr(0,b|0))+"$",e=b=b+1|0,c=d+y(c.substr(e))):
(d=y(c.substr(0,b|0)),e=b=b+1|0,c=d+y(c.substr(e)));a=a.replace(/\+/g,c);return G(a,!1)};function ya(a){a&&"function"==typeof a.u&&a.u()};function H(){this.h=this.h;this.g=this.g}H.prototype.h=!1;H.prototype.u=function(){this.h||(this.h=!0,this.j())};H.prototype.j=function(){if(this.g)for(;this.g.length;)this.g.shift()()};var za=Array.prototype.indexOf?function(a,b){return Array.prototype.indexOf.call(a,b,void 0)}:function(a,b){if("string"===typeof a)return"string"!==typeof b||1!=b.length?-1:a.indexOf(b,0);for(var c=0;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1};var Aa=/&/g,Ba=/</g,Ca=/>/g,Da=/"/g,Ea=/'/g,Fa=/\x00/g,Ga=/[\x00&<>"']/;var I;a:{var Ha=q.navigator;if(Ha){var Ia=Ha.userAgent;if(Ia){I=Ia;break a}}I=""}function J(a){return-1!=I.indexOf(a)};function Ja(a,b,c){for(var d in a)b.call(c,a[d],d,a)};var K;function L(a,b){this.i=a===Ka&&b||"";this.j=La}L.prototype.h=!0;L.prototype.g=function(){return this.i};var La={},Ka={};function M(a,b){this.i=b===N?a:""}M.prototype.h=!0;M.prototype.g=function(){return this.i.toString()};M.prototype.toString=function(){return this.i.toString()};function O(a){return a instanceof M&&a.constructor===M?a.i:"type_error:SafeUrl"}
var Ma=/^(?:audio\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-matroska|x-wav|wav|webm)|font\/\w+|image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|video\/(?:mpeg|mp4|ogg|webm|quicktime|x-matroska))(?:;\w+=(?:\w+|"[\w;,= ]+"))*$/i,Na=/^data:(.*);base64,[a-z0-9+\/]+=*$/i,Oa=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;function Pa(a){if(a instanceof M)return a;a="object"==typeof a&&a.h?a.g():String(a);Oa.test(a)||(a="about:invalid#zClosurez");return new M(a,N)}
var N={},Qa=new M("about:invalid#zClosurez",N);function P(a,b,c){this.i=c===Ra?a:""}P.prototype.h=!0;P.prototype.g=function(){return this.i.toString()};P.prototype.toString=function(){return this.i.toString()};var Ra={};function Sa(a,b,c,d){a=a instanceof M?a:Pa(a);b=b||q;c=c instanceof L?c instanceof L&&c.constructor===L&&c.j===La?c.i:"type_error:Const":c||"";return void 0!==d?b.open(O(a),c,d,void 0):b.open(O(a),c)};var Ta=J("Trident")||J("MSIE"),Ua=J("Edge")||Ta,Va=J("Gecko")&&!(-1!=I.toLowerCase().indexOf("webkit")&&!J("Edge"))&&!(J("Trident")||J("MSIE"))&&!J("Edge"),Wa=J("Macintosh");var Xa=function(){if(!q.addEventListener||!Object.defineProperty)return!1;var a=!1,b=Object.defineProperty({},"passive",{get:function(){a=!0}});try{q.addEventListener("test",r,b),q.removeEventListener("test",r,b)}catch(c){}return a}();function Q(a,b){this.type=a;this.target=b;this.i=!1}Q.prototype.g=function(){this.i=!0};function R(a){Q.call(this,a?a.type:"");this.relatedTarget=this.target=null;this.button=this.screenY=this.screenX=this.clientY=this.clientX=0;this.key="";this.metaKey=this.shiftKey=this.altKey=this.ctrlKey=!1;this.state=null;this.pointerId=0;this.pointerType="";this.h=null;if(a){var b=this.type=a.type,c=a.changedTouches&&a.changedTouches.length?a.changedTouches[0]:null;this.target=a.target||a.srcElement;var d=a.relatedTarget;if(d){if(Va){a:{try{w(d.nodeName);var e=!0;break a}catch(f){}e=!1}e||(d=null)}}else"mouseover"==
b?d=a.fromElement:"mouseout"==b&&(d=a.toElement);this.relatedTarget=d;c?(this.clientX=void 0!==c.clientX?c.clientX:c.pageX,this.clientY=void 0!==c.clientY?c.clientY:c.pageY,this.screenX=c.screenX||0,this.screenY=c.screenY||0):(this.clientX=void 0!==a.clientX?a.clientX:a.pageX,this.clientY=void 0!==a.clientY?a.clientY:a.pageY,this.screenX=a.screenX||0,this.screenY=a.screenY||0);this.button=a.button;this.key=a.key||"";this.ctrlKey=a.ctrlKey;this.altKey=a.altKey;this.shiftKey=a.shiftKey;this.metaKey=
a.metaKey;this.pointerId=a.pointerId||0;this.pointerType="string"===typeof a.pointerType?a.pointerType:Ya[a.pointerType]||"";this.state=a.state;this.h=a;a.defaultPrevented&&R.m.g.call(this)}}ka(R,Q);var Ya={2:"touch",3:"pen",4:"mouse"};R.prototype.g=function(){R.m.g.call(this);var a=this.h;a.preventDefault?a.preventDefault():a.returnValue=!1};var S="closure_listenable_"+(1E6*Math.random()|0);var Za=0;function $a(a,b,c,d,e){this.listener=a;this.g=null;this.src=b;this.type=c;this.capture=!!d;this.i=e;this.key=++Za;this.h=this.o=!1}function ab(a){a.h=!0;a.listener=null;a.g=null;a.src=null;a.i=null};function T(a){this.src=a;this.g={};this.h=0}T.prototype.add=function(a,b,c,d,e){var f=a.toString();a=this.g[f];a||(a=this.g[f]=[],this.h++);var g;a:{for(g=0;g<a.length;++g){var k=a[g];if(!k.h&&k.listener==b&&k.capture==!!d&&k.i==e)break a}g=-1}-1<g?(b=a[g],c||(b.o=!1)):(b=new $a(b,this.src,f,!!d,e),b.o=c,a.push(b));return b};var U="closure_lm_"+(1E6*Math.random()|0),V={},bb=0;function cb(a,b,c,d,e){if(d&&d.once)return db(a,b,c,d,e);if(Array.isArray(b)){for(var f=0;f<b.length;f++)cb(a,b[f],c,d,e);return null}c=eb(c);return a&&a[S]?a.g(b,c,t(d)?!!d.capture:!!d,e):fb(a,b,c,!1,d,e)}
function fb(a,b,c,d,e,f){if(!b)throw Error("Invalid event type");var g=t(e)?!!e.capture:!!e,k=gb(a);k||(a[U]=k=new T(a));c=k.add(b,c,d,g,f);if(c.g)return c;d=hb();c.g=d;d.src=a;d.listener=c;if(a.addEventListener)Xa||(e=g),void 0===e&&(e=!1),a.addEventListener(b.toString(),d,e);else if(a.attachEvent)a.attachEvent(ib(b.toString()),d);else if(a.addListener&&a.removeListener)a.addListener(d);else throw Error("addEventListener and attachEvent are unavailable.");bb++;return c}
function hb(){function a(c){return b.call(a.src,a.listener,c)}var b=jb;return a}function db(a,b,c,d,e){if(Array.isArray(b)){for(var f=0;f<b.length;f++)db(a,b[f],c,d,e);return null}c=eb(c);return a&&a[S]?a.h(b,c,t(d)?!!d.capture:!!d,e):fb(a,b,c,!0,d,e)}
function kb(a){if("number"!==typeof a&&a&&!a.h){var b=a.src;if(b&&b[S])b.i(a);else{var c=a.type,d=a.g;b.removeEventListener?b.removeEventListener(c,d,a.capture):b.detachEvent?b.detachEvent(ib(c),d):b.addListener&&b.removeListener&&b.removeListener(d);bb--;if(c=gb(b)){d=a.type;if(d in c.g){var e=c.g[d],f=za(e,a),g;(g=0<=f)&&Array.prototype.splice.call(e,f,1);g&&(ab(a),0==c.g[d].length&&(delete c.g[d],c.h--))}0==c.h&&(c.src=null,b[U]=null)}else ab(a)}}}
function ib(a){return a in V?V[a]:V[a]="on"+a}function jb(a,b){if(a.h)a=!0;else{b=new R(b,this);var c=a.listener,d=a.i||a.src;a.o&&kb(a);a=c.call(d,b)}return a}function gb(a){a=a[U];return a instanceof T?a:null}var lb="__closure_events_fn_"+(1E9*Math.random()>>>0);function eb(a){if("function"===typeof a)return a;a[lb]||(a[lb]=function(b){return a.handleEvent(b)});return a[lb]};function W(a){H.call(this);this.l=a;this.i={}}ka(W,H);var mb=[];function nb(a){Ja(a.i,function(b,c){this.i.hasOwnProperty(c)&&kb(b)},a);a.i={}}W.prototype.j=function(){W.m.j.call(this);nb(this)};W.prototype.handleEvent=function(){throw Error("EventHandler.handleEvent not implemented");};function ob(a){H.call(this);this.i=a||document.body;this.l=new W(this);a=ja(ya,this.l);this.h?a():(this.g||(this.g=[]),this.g.push(a));a=this.l;var b=this.i,c=this.s,d="click";Array.isArray(d)||(d&&(mb[0]=d.toString()),d=mb);for(var e=0;e<d.length;e++){var f=cb(b,d[e],c||a.handleEvent,!1,a.l||a);if(!f)break;a.i[f.key]=f}}m(ob,H);
ob.prototype.s=function(a){if(!(0!=a.h.button||Wa&&a.ctrlKey||a.i))for(var b=a.target;b&&b!=this.i;){if(b.tagName&&"a"==b.tagName.toLowerCase()){var c=b.getAttribute("href")||b.getAttributeNS("http://www.w3.org/1999/xlink","href"),d=c;try{var e=wa(c),f;if(f="www.google.com"===G(e[3],!0)){var g=wa(c);f="/url"===G(g[5],!0)}if(f){var k=xa(c,"q");d=k?k:xa(c,"url")}}catch(v){a:{var p=v;if(null!=p){var n=p.v;if(null!=n){v=n;break a}}if(p instanceof TypeError){var C=n=new ra;C.l=y(p);qa(C);n.g="__noinit__";
n.g=p;n.i(new TypeError(n));p=n}else C=n=new E,C.l=y(p),qa(C),n.g="__noinit__",n.g=p,n.i(Error(n)),p=n;v=p}if(!(v instanceof B))throw v.h;}d=null!=d?d:"";if(c!=d){e=void 0;b={target:"_blank",noreferrer:!0};c=window;d instanceof M?f=d:(f="undefined"!=typeof d.href?d.href:String(d),f instanceof M||(f="object"==typeof f&&f.h?f.g():String(f),Oa.test(f)?f=new M(f,N):(f=String(f),f=f.replace(/(%0A|%0D)/g,""),f=(g=f.match(Na))&&Ma.test(g[1])?new M(f,N):null)),f=f||Qa);d=b.target||d.target;g=[];for(e in b)switch(e){case "width":case "height":case "top":case "left":g.push(e+
"="+b[e]);break;case "target":case "noopener":case "noreferrer":break;default:g.push(e+"="+(b[e]?1:0))}e=g.join(",");if((J("iPhone")&&!J("iPod")&&!J("iPad")||J("iPad")||J("iPod"))&&c.navigator&&c.navigator.standalone&&d&&"_self"!=d)e="A",g=document,e=String(e),"application/xhtml+xml"===g.contentType&&(e=e.toLowerCase()),g=e=g.createElement(e),f=f instanceof M?f:Pa(f),g.href=O(f),e.setAttribute("target",d),b.noreferrer&&e.setAttribute("rel","noreferrer"),b=document.createEvent("MouseEvent"),b.initMouseEvent("click",
!0,!0,c,1),e.dispatchEvent(b);else if(b.noreferrer){if(c=Sa("",c,d,e),b=O(f),c){Ua&&-1!=b.indexOf(";")&&(b="'"+b.replace(/'/g,"%27")+"'");c.opener=null;Ga.test(b)&&(-1!=b.indexOf("&")&&(b=b.replace(Aa,"&amp;")),-1!=b.indexOf("<")&&(b=b.replace(Ba,"&lt;")),-1!=b.indexOf(">")&&(b=b.replace(Ca,"&gt;")),-1!=b.indexOf('"')&&(b=b.replace(Da,"&quot;")),-1!=b.indexOf("'")&&(b=b.replace(Ea,"&#39;")),-1!=b.indexOf("\x00")&&(b=b.replace(Fa,"&#0;")));b='<meta name="referrer" content="no-referrer"><meta http-equiv="refresh" content="0; url='+
b+'">';if(void 0===K)if(d=null,(e=q.trustedTypes)&&e.createPolicy){try{d=e.createPolicy("goog#html",{createHTML:u,createScript:u,createScriptURL:u})}catch(v){q.console&&q.console.error(v.message)}K=d}else K=d;b=(d=K)?d.createHTML(b):b;b=new P(b,null,Ra);(c=c.document)&&c.write&&(c.write(b instanceof P&&b.constructor===P?b.i:"type_error:SafeHtml"),c.close())}}else(c=Sa(f,c,d,e))&&b.noopener&&(c.opener=null);a.g();break}}b=b.parentNode}};function pb(a){new ob(a)}
var X=["DOCS_installLinkReferrerSanitizer"],Y=q;X[0]in Y||"undefined"==typeof Y.execScript||Y.execScript("var "+X[0]);for(var Z;X.length&&(Z=X.shift());)X.length||void 0===pb?Y[Z]&&Y[Z]!==Object.prototype[Z]?Y=Y[Z]:Y=Y[Z]={}:Y[Z]=pb;}).call(this);
</script><script type="text/javascript" nonce="">DOCS_installLinkReferrerSanitizer();</script></body></html>